package com.aaa.spring.job;

import com.aaa.spring.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

import java.util.Date;

/**
 * 简单的定时任务演示
 */
@Component   //让框架管理对象
public class DemoJob {

    @Autowired
    private UserService userService;

    /**
     * 定时任务
     */
    @Scheduled(fixedRate = 5L*1000L)
    //cron = "0/5 * * * * ?",
    //initialDelay 在项目启动后多少毫秒开始执行
     //fixedDelay 固定周期执行 这个周期是以上一个调用任务的完成时间为基准
     //fixedRate 固定速率执行，以上一个任务开始时间为基准 可能会被阻塞
    public void job(){
        System.out.println("定时任务 开始  === "+new Date());
        try {//模拟业务执行时间
            Thread.sleep(10L * 1000L);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        System.out.println("定时任务 结束  === "+new Date());

    }




}
